home *** CD-ROM | disk | FTP | other *** search
/ Developer Helper 1: Phil & Dave's Excellent CD / Excellent CD HFS.raw / Moof / Goodies / MPW Goodies / MPW Goodies⁄DTS / OpenCheckedOut < prev    next >
Text File  |  2022-08-05  |  2KB  |  82 lines

  1. #
  2. #    File:        OpenCheckedOut - open all checked-out files from all projects
  3. #
  4. #    Usage:    OpenCheckedOut
  5. #
  6. #    OpenCheckedOut opens all the files in each CheckOutDir that
  7. #    are currently checked out for modification.
  8. #
  9. #    Written by:    Bruce Horn, Steve Capps, Larry Kenyon,
  10. #                John Meier, scott douglass, Darin Adler,
  11. #                Paul Mercer, Bryan Stearns, Dave Owens
  12. #
  13. #    Copyright:    © 1988 by Apple Computer, Inc., all rights reserved.
  14. #
  15. #    Change History:
  16. #
  17. #        2/17/89        sad        use ProjectInfo -s; redirect to {somewhere}
  18. #        11/17/88    sad        replace ∑ Dev:Null at end
  19. #        11/17/88    sad        finish Can’t parse logic, was accidentally checked in
  20. #        11/17/88    sad        fix for “:” as checkout dir
  21. #
  22. #    To Do:
  23. #        Can’t handle file name with spaces.
  24. #
  25.  
  26. Set Exit 0
  27.  
  28. # the following helps to debug until MPW sends echos to Dev:Console instead of Dev:StdErr
  29. If {Echo} == 1
  30.     Set somewhere "∑∑ '{Worksheet}∂'"
  31. Else
  32.     Set somewhere '∑ Dev:Null'
  33. End
  34.  
  35. Begin
  36.  
  37.     # first get all the check-out directories
  38.  
  39.     Set CheckOutDirs "`CheckOutDir -m -r; Set CheckOutDirStatus {Status} ; Echo ""`"
  40.     Exit If {CheckOutDirStatus} != 0
  41.  
  42.     Loop
  43.         Break If "{CheckOutDirs}" !~ / *CheckOutDir +-project ∂'«0,1»([¬:]+∫)®1∂'«0,1» ∂'«0,1»([¬∫]*:)®2∂'«0,1» (≈)®3/
  44.         Set Project "{®1}"
  45.         Set CheckOutDir "{®2}"
  46.         Set CheckOutDirs "{®3}"
  47.  
  48.         # now for each directory, get all modified files in the project
  49.  
  50.         Set Info "`ProjectInfo -s -a "{User}" -m -project "{Project}"; Set ProjectInfoStatus {Status}`"
  51.         # *** check status here
  52.  
  53.         Set FirstNotOpened ""
  54.         Set OthersNotOpened ""
  55.         Loop
  56.             Break If "{Info}" !~ /[¬+]*    ([¬,]+)®1,[0-9.a-z]+∂+ (≈)®2/
  57.             Set File "{®1}"
  58.             Set Info "{®2}"
  59.             Open "{CheckOutDir}{File}" ∑∑ "{Worksheet}"
  60.             If {Status} != 0
  61.                 If "{FirstNotOpened}" == ""
  62.                     Set FirstNotOpened "“{File}”"
  63.                 Else
  64.                     Set OthersNotOpened "{OthersNotOpened}, “{File}”"
  65.                 End
  66.             End
  67.         End
  68.         If "{FirstNotOpened}" != ""
  69.             If "{OthersNotOpened}" == ""
  70.                 Alert "{FirstNotOpened} is checked out from “{Project}” but is not in the “{CheckOutDir}” directory."
  71.             Else
  72.                 Alert "The following files are checked out from “{Project}” but are not in the “{CheckOutDir}” directory: {FirstNotOpened}{OthersNotOpened}."
  73.             End
  74.         End
  75.     End
  76.     If "{CheckOutDirs}" != ""
  77.         Echo  "### OpenCheckedOut - Couldn’t parse: " "“{CheckOutDirs}”" ∑∑  "{Worksheet}"
  78.         Exit 1
  79.     End
  80.  
  81. End {somewhere}
  82.